package com.itlong.cloud.enumerate;

import java.util.Objects;

/**
 * <desc>
 *      云电梯来源。
 * <desc/>
 *
 * @createDate 2018-04-20.
 */
public enum CloudElevatorSourceEnum {

    ITLONG_CLOUD_ELEVATOR("itlong",1),
    ;


    private String description;
    private Integer type;

     /**
      * <desc>
      *      云电梯产品来源枚举描述与类型构造函数。
      * <desc/>
      *
      * @param
      * @return
      * @author shengen.T
      * @createDate 2018-04-20
      */
    CloudElevatorSourceEnum() {

    }

     /**
      * <desc>
      *      云电梯产品来源枚举描述与类型构造函数。
      * <desc/>
      *
      * @param description 描述
      * @param type 类型
      * @return
      * @author shengen.T
      * @createDate 2018-04-20
      */
    CloudElevatorSourceEnum(String description,Integer type){
        this.description = description;
        this.type = type;
    }

     /**
      * <desc>
      *      获取描述信息。
      * <desc/>
      *
      * @param
      * @return
      * @author shengen.T
      * @createDate 2018-04-20
      */
    public String getDescription(){return description;}

     /**
      * <desc>
      *      获取枚举类型。
      * <desc/>
      *
      * @param
      * @return
      * @author shengen.T
      * @createDate 2018-04-20
      */
    public Integer getType() {return type;}

     /**
      * <desc>
      *      获取来源描述。
      * <desc/>
      *
      * @param type 来源类型
      * @return
      * @author shengen.T
      * @createDate 2018-04-20
      */
    public static String getDescription(Integer type){

        CloudElevatorSourceEnum[] types = CloudElevatorSourceEnum.values();
        for(CloudElevatorSourceEnum limitCategory:types){
            if(Objects.equals(limitCategory.getType(), type)){
                return limitCategory.getDescription();
            }
        }
        return null;
    }
}
